
from helpers import Singleton
from Doctors import Doctors

class DoctorDaysOff(Singleton.Singleton):
    
    def __init__(self):

        doctors = Doctors();
        
        self._daysOffByMonth = dict()
        self._noCallByMonth = dict()

        daysOff = dict()
        daysOff[1] = [ doctors.doctorIds['NADROO'], doctors.doctorIds['RON'] ]
        daysOff[2] = [ doctors.doctorIds['NADROO'] ]
        daysOff[3] = [ doctors.doctorIds['NADROO'] ]
        daysOff[7] = [ doctors.doctorIds['SUK'] ]
        daysOff[8] = [ doctors.doctorIds['SUK'] ]
        daysOff[12] = [ doctors.doctorIds['GAD'], doctors.doctorIds['GUDAVALLI'], doctors.doctorIds['RON'] ]
        daysOff[13] = [ doctors.doctorIds['GUDAVALLI'] ]
        daysOff[14] = [ doctors.doctorIds['NADROO'], doctors.doctorIds['GUDAVALLI'], doctors.doctorIds['SUK'] ]
        daysOff[15] = [ doctors.doctorIds['NADROO'], doctors.doctorIds['GUDAVALLI'], doctors.doctorIds['SUK'] ]
        daysOff[18] = [ doctors.doctorIds['GAD'], doctors.doctorIds['RON'] ]
        daysOff[19] = [ doctors.doctorIds['GAD'], doctors.doctorIds['RON'] ]
        daysOff[20] = [ doctors.doctorIds['HOANG'] ]
        daysOff[21] = [ doctors.doctorIds['HOANG'] ]
        daysOff[22] = [ doctors.doctorIds['HOANG'] ]
        daysOff[25] = [ doctors.doctorIds['RON'] ]
        daysOff[26] = [ doctors.doctorIds['RON'] ]
        daysOff[27] = [ doctors.doctorIds['RON'] ]
        daysOff[28] = [ doctors.doctorIds['NADROO'], doctors.doctorIds['GUDAVALLI'], doctors.doctorIds['RON'] ]
        daysOff[29] = [ doctors.doctorIds['NADROO'], doctors.doctorIds['GUDAVALLI'], doctors.doctorIds['RON'] ]
        daysOff[30] = [ doctors.doctorIds['GUDAVALLI'], doctors.doctorIds['RON'] ]
             
        noCall = dict()
        noCall[7] = [ doctors.doctorIds['NADROO'] ]

        self._daysOffByMonth[5] = daysOff
        self._noCallByMonth[5] = noCall

        daysOff = dict()
        daysOff[3] = [ doctors.doctorIds['SUK'] ]
        daysOff[4] = [ doctors.doctorIds['SUK'] ]
        daysOff[5] = [ doctors.doctorIds['SUK'] ]
        daysOff[6] = [ doctors.doctorIds['SUK'] ]
        daysOff[7] = [ doctors.doctorIds['SUK'] ]
        daysOff[8] = [ doctors.doctorIds['GUDAVALLI'], doctors.doctorIds['SUK'] ]
        daysOff[9] = [ doctors.doctorIds['GUDAVALLI'], doctors.doctorIds['SUK'] ]
        daysOff[10] = [ doctors.doctorIds['GUDAVALLI'], doctors.doctorIds['SUK'] ]
        daysOff[11] = [ doctors.doctorIds['SUK'] ]
        daysOff[13] = [ doctors.doctorIds['SUK'] ]
        daysOff[18] = [ doctors.doctorIds['HOANG'] ]
        daysOff[19] = [ doctors.doctorIds['HOANG'] ]
        daysOff[20] = [ doctors.doctorIds['HOANG'] ]
        daysOff[21] = [ doctors.doctorIds['HOANG'] ]
        daysOff[22] = [ doctors.doctorIds['HOANG'] ]
        daysOff[23] = [ doctors.doctorIds['HOANG'], doctors.doctorIds['RON'] ]
        daysOff[24] = [ doctors.doctorIds['HOANG'] ]
        daysOff[25] = [ doctors.doctorIds['HOANG'] ]
        daysOff[26] = [ doctors.doctorIds['NADROO'] ]
        daysOff[27] = [ doctors.doctorIds['NADROO'] ]
        daysOff[28] = [ doctors.doctorIds['NADROO'] ]
        daysOff[29] = [ doctors.doctorIds['NADROO'] ]

        noCall = dict()
        noCall[1] = [ doctors.doctorIds['GUDAVALLI'] ]
        noCall[2] = [ doctors.doctorIds['GUDAVALLI'] ]
        noCall[3] = [ doctors.doctorIds['NADROO'] ]
        noCall[4] = [ doctors.doctorIds['NADROO'] ]
        noCall[7] = [ doctors.doctorIds['GUDAVALLI'] ]
        noCall[12] = [ doctors.doctorIds['RON'] ]
        noCall[17] = [ doctors.doctorIds['GUDAVALLI'], doctors.doctorIds['HOANG'], doctors.doctorIds['RON'], doctors.doctorIds['GAD'] ]
        noCall[19] = [ doctors.doctorIds['GUDAVALLI'] ]
        noCall[22] = [ doctors.doctorIds['RON'] ]
        noCall[29] = [ doctors.doctorIds['NADROO'] ]

        self._daysOffByMonth[6] = daysOff
        self._noCallByMonth[6] = noCall

    def getDaysOffByMonth(self, month):
        return self._daysOffByMonth[month]
        
    def getNoCallByMonth(self, month):
        return self._noCallByMonth[month]

        
if __name__ == '__main__':
    d = DoctorDaysOff()
    
    